A Snapshot Utility for a Distributed Object-Oriented Database System
نویسنده
چکیده
Thor is an object-oriented database management system that is designed to be scalable in a distributed environment. Thor allows objects to be stored persistently and accessed efficiently while providing ACID transaction semantics. In this paper, we propose to extend Thor with a snapshot utility. Snapshots are useful for a wide range of applications, including data analysis, data mining and database recovery. In order to provide high performance in Thor, it is essential that the snapshot utility be efficient in both the archiving and the retrieval of snapshot so that interference with concurrent transactions in the system is minimized. We propose a lazy gossip-based approach to taking snapshots efficiently. In this approach snapshots are propagated throughout the system via a lazy pairwise exchange of gossip messages between servers. The propagation of messages is either done in the background or piggybacked on other communication messages so that they are non-intrusive to concurrent transactions. In addition, we propose to create snapshots in an incremental and lazy manner to further improve the efficiency and to minimize the space requirements of storing the snapshots. Our approach is novel in that it makes use of the server’s write buffer to allow the lazy propagation and creation of snapshots. In our system, the data pages of a snapshot are automatically archived after they have been created. These pages are later retrieved on-demand when the user runs a transaction on a snapshot of the database. The archival and retrieval of snapshots is completely transparent to the user. The retrieved data pages of snapshots are installed into the client’s persistent cache. We extend Thor’s cache management mechanism to support the caching of multiple versions of the database at the same time, and also to allow compaction of the database across these versions without cache contamination. Finally, we propose a peer-to-peer infrastructure for the underlying storage facility required for archiving the snapshots. Peer-to-peer systems have the desirable qualities of high availability, fault-tolerance, automatic loadbalancing and self-configuration. More importantly, the cooperative storage paradigm in peer-to-peer systems allows us to utilize the otherwise unused storage in the participating storage servers. We extend the DHash layer in the Cooperative File System for archiving data pages of snapshots by providing persistent storage and adding a self-repair mechanism to improve data survivability.
منابع مشابه
Distributed Object Management in Thor
Thor is a new object-oriented database management system (OODBMS), intended to be used in heterogeneous distributed systems to allow programs written in diierent programming languages to share objects in a convenient manner. Thor objects are persistent in spite of failures, are highly likely to be accessible whenever they are needed, and can be struc-tured to reeect the kinds of information of ...
متن کاملObjects Identification in Object-Oriented Software Development - A Taxonomy and Survey on Techniques
Analysis and design of object oriented is onemodern paradigms for developing a system. In this paradigm, there are several objects and each object plays some specific roles. Identifying objects (and classes) is one of the most important steps in the object-oriented paradigm. This paper makes a literature review over techniques to identify objects and then presents six taxonomies for them. The f...
متن کاملModelsaz: An Object-Oriented Computer-Aided Modeling Environment
Modeling and simulation of processing plants are widely used in industry. Construction of a mathematical model for a plant is a time-consuming and error-prone task. In light of extensive advancements in computer science (both hardware and software), computers are becoming a necessary instrument in industrial activities. Many software tools for modeling, simulation and optimization of proces...
متن کاملObject-Oriented Database Technology Applied to Distributed Simulation
There are several ways in which object-oriented database technology can be harnessed to assist in the implementation of simulation packages. We have already integrated our own simulation environment, HASE, with a commercially-available object-oriented database management system. In particular, we use the database system's transaction processing and object persistence facilities. We are currentl...
متن کاملApplications of Object - Oriented Database Technology in Knowledge - Based Integrated Information Systems
Knowledge-based integrated information systems (KBIIS) denote a class of systems that involve the integration of heterogeneous information resources. These information resources may include heterogeneous distributed database systems, knowledge-based systems (such as expert systems) involving heterogeneous knowledge representations, and conventional application programs and their associated proc...
متن کامل